遥信脉冲和回路巡检APP开发记录
遥信脉冲和回路巡检APP开发记录
APP运行流程
初始化APP参数,日志记录、MQTT Client连接,获取TTU设备实例guid.
初始化模组通信通道
创建本地内存库
注册数据点模型
初始化运行参数
循环采集数据,处理上报信息,并更新数据到配电数据中心,目前循环1分钟间隔写入配电数据中心,变化立即写入数据中心。
待完善开发内容TODO:
- 通道异常的恢复/重新初始化机制
- 内存库访问加锁保护
- 完成日志记录功能,方便调试与记录
- 营销数据中心数据A-XDR数据入库
配电数据中心JSON接口记录
获取TTU设备guid
rspSample/dataCenter/JSON/get/reques
{ "token": "1639552601_1845713645", "timestamp": "2021-12-15T15:16:41.532+0800", "body": [{ "model": "TTU", "port": "0", "addr": "0", "desc": "TTUshujucaiji" }] }
dataCenter/rspSample/JSON/get/response/guid
{ "token": "1639552601_1845713645", "timestamp": "2021-12-15T15:16:41.540+0800", "body": [{ "model": "TTU", "port": "0", "addr": "0", "desc": "TTUshujucaiji", "guid": "f833b65f53e20695", "dev": "TTU_f833b65f53e20695" }] }
设置DI点数据模型,追加方式修改模型
rspSample/dataCenter/JSON/set/request/model
{ "token": "1639552602_827317413", "timestamp": "2021-12-15T15:16:42.545+0800", "model": "TTU", "body": [{ "name": "Ind1", "type": "Boolean", "unit": "", "desc": "rspSample", "deadzone": "1.000000", "ratio": "1.000000", "isReport": "1", "userdefine": "", "data_row": ["single", "single_p"] }, { "name": "Ind2", "type": "Boolean", "unit": "", "desc": "rspSample", "deadzone": "1.000000", "ratio": "1.000000", "isReport": "1", "userdefine": "", "data_row": ["single", "single_p"] }, { "name": "Ind3", "type": "Boolean", "unit": "", "desc": "rspSample", "deadzone": "1.000000", "ratio": "1.000000", "isReport": "1", "userdefine": "", "data_row": ["single", "single_p"] }, { "name": "Ind4", "type": "Boolean", "unit": "", "desc": "rspSample", "deadzone": "1.000000", "ratio": "1.000000", "isReport": "1", "userdefine": "", "data_row": ["single", "single_p"] }] }
dataCenter/rspSample/JSON/set/response/model
{ "token": "1639552602_827317413", "timestamp": "2021-12-15T15:16:42.573+0800", "status": "OK" }
设置回路巡检数据模型,追加方式修改模型
lcMonitor/dataCenter/JSON/set/request/model
{ "token": "1639552603_1492363769", "timestamp": "2021-12-15T15:16:43.580+0800", "model": "TTU", "body": [{ "name": "Stlc_phsA", "type": "UTiny", "unit": "", "desc": "lcMonitor", "deadzone": "1.000000", "ratio": "1.000000", "isReport": "1", "userdefine": "", "data_row": ["single", "single_p"] }, { "name": "Stlc_phsB", "type": "UTiny", "unit": "", "desc": "lcMonitor", "deadzone": "1.000000", "ratio": "1.000000", "isReport": "1", "userdefine": "", "data_row": ["single", "single_p"] }, { "name": "Stlc_phsC", "type": "UTiny", "unit": "", "desc": "lcMonitor", "deadzone": "1.000000", "ratio": "1.000000", "isReport": "1", "userdefine": "", "data_row": ["single", "single_p"] }, { "name": "Anglc1_phsA", "type": "Uint", "unit": "", "desc": "lcMonitor", "deadzone": "1.000000", "ratio": "1.000000", "isReport": "1", "userdefine": "", "data_row": ["single", "single_p"] }, { "name": "Anglc1_phsB", "type": "Uint", "unit": "", "desc": "lcMonitor", "deadzone": "1.000000", "ratio": "1.000000", "isReport": "1", "userdefine": "", "data_row": ["single", "single_p"] }, { "name": "Anglc1_phsC", "type": "Uint", "unit": "", "desc": "lcMonitor", "deadzone": "1.000000", "ratio": "1.000000", "isReport": "1", "userdefine": "", "data_row": ["single", "single_p"] }, { "name": "Anglc2_phsA", "type": "Uint", "unit": "", "desc": "lcMonitor", "deadzone": "1.000000", "ratio": "1.000000", "isReport": "1", "userdefine": "", "data_row": ["single", "single_p"] }, { "name": "Anglc2_phsB", "type": "Uint", "unit": "", "desc": "lcMonitor", "deadzone": "1.000000", "ratio": "1.000000", "isReport": "1", "userdefine": "", "data_row": ["single", "single_p"] }, { "name": "Anglc2_phsC", "type": "Uint", "unit": "", "desc": "lcMonitor", "deadzone": "1.000000", "ratio": "1.000000", "isReport": "1", "userdefine": "", "data_row": ["single", "single_p"] }, { "name": "Anglc3_phsA", "type": "Uint", "unit": "", "desc": "lcMonitor", "deadzone": "1.000000", "ratio": "1.000000", "isReport": "1", "userdefine": "", "data_row": ["single", "single_p"] }, { "name": "Anglc3_phsB", "type": "Uint", "unit": "", "desc": "lcMonitor", "deadzone": "1.000000", "ratio": "1.000000", "isReport": "1", "userdefine": "", "data_row": ["single", "single_p"] }, { "name": "Anglc3_phsC", "type": "Uint", "unit": "", "desc": "lcMonitor", "deadzone": "1.000000", "ratio": "1.000000", "isReport": "1", "userdefine": "", "data_row": ["single", "single_p"] }, { "name": "Anglc4_phsA", "type": "Uint", "unit": "", "desc": "lcMonitor", "deadzone": "1.000000", "ratio": "1.000000", "isReport": "1", "userdefine": "", "data_row": ["single", "single_p"] }, { "name": "Anglc4_phsB", "type": "Uint", "unit": "", "desc": "lcMonitor", "deadzone": "1.000000", "ratio": "1.000000", "isReport": "1", "userdefine": "", "data_row": ["single", "single_p"] }, { "name": "Anglc4_phsC", "type": "Uint", "unit": "", "desc": "lcMonitor", "deadzone": "1.000000", "ratio": "1.000000", "isReport": "1", "userdefine": "", "data_row": ["single", "single_p"] }, { "name": "Anglc5_phsA", "type": "Uint", "unit": "", "desc": "lcMonitor", "deadzone": "1.000000", "ratio": "1.000000", "isReport": "1", "userdefine": "", "data_row": ["single", "single_p"] }, { "name": "Anglc5_phsB", "type": "Uint", "unit": "", "desc": "lcMonitor", "deadzone": "1.000000", "ratio": "1.000000", "isReport": "1", "userdefine": "", "data_row": ["single", "single_p"] }, { "name": "Anglc5_phsC", "type": "Uint", "unit": "", "desc": "lcMonitor", "deadzone": "1.000000", "ratio": "1.000000", "isReport": "1", "userdefine": "", "data_row": ["single", "single_p"] }, { "name": "Anglc6_phsA", "type": "Uint", "unit": "", "desc": "lcMonitor", "deadzone": "1.000000", "ratio": "1.000000", "isReport": "1", "userdefine": "", "data_row": ["single", "single_p"] }, { "name": "Anglc6_phsB", "type": "Uint", "unit": "", "desc": "lcMonitor", "deadzone": "1.000000", "ratio": "1.000000", "isReport": "1", "userdefine": "", "data_row": ["single", "single_p"] }, { "name": "Anglc6_phsC", "type": "Uint", "unit": "", "desc": "lcMonitor", "deadzone": "1.000000", "ratio": "1.000000", "isReport": "1", "userdefine": "", "data_row": ["single", "single_p"] }, { "name": "Anglc7_phsA", "type": "Uint", "unit": "", "desc": "lcMonitor", "deadzone": "1.000000", "ratio": "1.000000", "isReport": "1", "userdefine": "", "data_row": ["single", "single_p"] }, { "name": "Anglc7_phsB", "type": "Uint", "unit": "", "desc": "lcMonitor", "deadzone": "1.000000", "ratio": "1.000000", "isReport": "1", "userdefine": "", "data_row": ["single", "single_p"] }, { "name": "Anglc7_phsC", "type": "Uint", "unit": "", "desc": "lcMonitor", "deadzone": "1.000000", "ratio": "1.000000", "isReport": "1", "userdefine": "", "data_row": ["single", "single_p"] }, { "name": "Anglc8_phsA", "type": "Uint", "unit": "", "desc": "lcMonitor", "deadzone": "1.000000", "ratio": "1.000000", "isReport": "1", "userdefine": "", "data_row": ["single", "single_p"] }, { "name": "Anglc8_phsB", "type": "Uint", "unit": "", "desc": "lcMonitor", "deadzone": "1.000000", "ratio": "1.000000", "isReport": "1", "userdefine": "", "data_row": ["single", "single_p"] }, { "name": "Anglc8_phsC", "type": "Uint", "unit": "", "desc": "lcMonitor", "deadzone": "1.000000", "ratio": "1.000000", "isReport": "1", "userdefine": "", "data_row": ["single", "single_p"] }, { "name": "Anglc9_phsA", "type": "Uint", "unit": "", "desc": "lcMonitor", "deadzone": "1.000000", "ratio": "1.000000", "isReport": "1", "userdefine": "", "data_row": ["single", "single_p"] }, { "name": "Anglc9_phsB", "type": "Uint", "unit": "", "desc": "lcMonitor", "deadzone": "1.000000", "ratio": "1.000000", "isReport": "1", "userdefine": "", "data_row": ["single", "single_p"] }, { "name": "Anglc9_phsC", "type": "Uint", "unit": "", "desc": "lcMonitor", "deadzone": "1.000000", "ratio": "1.000000", "isReport": "1", "userdefine": "", "data_row": ["single", "single_p"] }, { "name": "Anglc10_phsA", "type": "Uint", "unit": "", "desc": "lcMonitor", "deadzone": "1.000000", "ratio": "1.000000", "isReport": "1", "userdefine": "", "data_row": ["single", "single_p"] }, { "name": "Anglc10_phsB", "type": "Uint", "unit": "", "desc": "lcMonitor", "deadzone": "1.000000", "ratio": "1.000000", "isReport": "1", "userdefine": "", "data_row": ["single", "single_p"] }, { "name": "Anglc10_phsC", "type": "Uint", "unit": "", "desc": "lcMonitor", "deadzone": "1.000000", "ratio": "1.000000", "isReport": "1", "userdefine": "", "data_row": ["single", "single_p"] }, { "name": "Anglc11_phsA", "type": "Uint", "unit": "", "desc": "lcMonitor", "deadzone": "1.000000", "ratio": "1.000000", "isReport": "1", "userdefine": "", "data_row": ["single", "single_p"] }, { "name": "Anglc11_phsB", "type": "Uint", "unit": "", "desc": "lcMonitor", "deadzone": "1.000000", "ratio": "1.000000", "isReport": "1", "userdefine": "", "data_row": ["single", "single_p"] }, { "name": "Anglc11_phsC", "type": "Uint", "unit": "", "desc": "lcMonitor", "deadzone": "1.000000", "ratio": "1.000000", "isReport": "1", "userdefine": "", "data_row": ["single", "single_p"] }, { "name": "Anglc12_phsA", "type": "Uint", "unit": "", "desc": "lcMonitor", "deadzone": "1.000000", "ratio": "1.000000", "isReport": "1", "userdefine": "", "data_row": ["single", "single_p"] }, { "name": "Anglc12_phsB", "type": "Uint", "unit": "", "desc": "lcMonitor", "deadzone": "1.000000", "ratio": "1.000000", "isReport": "1", "userdefine": "", "data_row": ["single", "single_p"] }, { "name": "Anglc12_phsC", "type": "Uint", "unit": "", "desc": "lcMonitor", "deadzone": "1.000000", "ratio": "1.000000", "isReport": "1", "userdefine": "", "data_row": ["single", "single_p"] }, { "name": "Anglc13_phsA", "type": "Uint", "unit": "", "desc": "lcMonitor", "deadzone": "1.000000", "ratio": "1.000000", "isReport": "1", "userdefine": "", "data_row": ["single", "single_p"] }, { "name": "Anglc13_phsB", "type": "Uint", "unit": "", "desc": "lcMonitor", "deadzone": "1.000000", "ratio": "1.000000", "isReport": "1", "userdefine": "", "data_row": ["single", "single_p"] }, { "name": "Anglc13_phsC", "type": "Uint", "unit": "", "desc": "lcMonitor", "deadzone": "1.000000", "ratio": "1.000000", "isReport": "1", "userdefine": "", "data_row": ["single", "single_p"] }] }
dataCenter/lcMonitor/JSON/set/response/model
{ "token": "1639552603_1492363769", "timestamp": "2021-12-15T15:16:43.664+0800", "status": "OK" }
开入数据变化上报
#Ind1 分 -> 合
rspSample/Broadcast/JSON/report/notification/TTU/TTU_f833b65f53e20695
{ "token": "1639553593_781452405", "timestamp": "2021-12-15T15:33:13.501+0800", "datatype": "1", "body": [{ "name": "Ind1", "id": "1", "val": "1", "unit": "", "quality": "1", "timestamp": "2021-12-15T15:33:13.222+0800" }] }
#Ind1 合 -> 分
rspSample/Broadcast/JSON/report/notification/TTU/TTU_f833b65f53e20695
{ "token": "1639553594_755312449", "timestamp": "2021-12-15T15:33:14.182+0800", "datatype": "1", "body": [{ "name": "Ind1", "id": "1", "val": "0", "unit": "", "quality": "1", "timestamp": "2021-12-15T15:33:13.939+0800" }] }
开入数据更新到数据中心
rspSample/dataCenter/JSON/set/request/TTU/TTU_f833b65f53e20695
{ "token": "1639552606_2041319718", "timestamp": "2021-12-15T15:16:46.410+0800", "data_row": "single", "body": [{ "name": "Ind1", "val": "0", "quality": "1", "timestamp": "2021-12-15T13:02:22.174+0800", "secret": "0" }, { "name": "Ind2", "val": "0", "quality": "1", "timestamp": "2021-12-15T13:02:26.803+0800", "secret": "0" }, { "name": "Ind3", "val": "0", "quality": "1", "timestamp": "2021-12-15T13:02:31.746+0800", "secret": "0" }, { "name": "Ind4", "val": "0", "quality": "1", "timestamp": "2021-12-15T13:02:41.899+0800", "secret": "0" }] }
回路巡检数据更新到数据中心
lcMonitor/dataCenter/JSON/set/request/TTU/TTU_f833b65f53e20695
{ "token": "1639552607_2050422135", "timestamp": "2021-12-15T15:16:47.094+0800", "data_row": "single", "body": [{ "name": "Stlc_phsA", "val": "2", "quality": "1", "timestamp": "2021-12-15T15:16:47.091+0800", "secret": "0" }, { "name": "Stlc_phsB", "val": "2", "quality": "1", "timestamp": "2021-12-15T15:16:47.091+0800", "secret": "0" }, { "name": "Stlc_phsC", "val": "2", "quality": "1", "timestamp": "2021-12-15T15:16:47.091+0800", "secret": "0" }, { "name": "Anglc1_phsA", "val": "522", "quality": "1", "timestamp": "2021-12-15T15:16:47.091+0800", "secret": "0" }, { "name": "Anglc1_phsB", "val": "528", "quality": "1", "timestamp": "2021-12-15T15:16:47.091+0800", "secret": "0" }, { "name": "Anglc1_phsC", "val": "520", "quality": "1", "timestamp": "2021-12-15T15:16:47.091+0800", "secret": "0" }, { "name": "Anglc2_phsA", "val": "15159", "quality": "1", "timestamp": "2021-12-15T15:16:47.091+0800", "secret": "0" }, { "name": "Anglc2_phsB", "val": "14833", "quality": "1", "timestamp": "2021-12-15T15:16:47.091+0800", "secret": "0" }, { "name": "Anglc2_phsC", "val": "14992", "quality": "1", "timestamp": "2021-12-15T15:16:47.091+0800", "secret": "0" }, { "name": "Anglc3_phsA", "val": "15151", "quality": "1", "timestamp": "2021-12-15T15:16:47.091+0800", "secret": "0" }, { "name": "Anglc3_phsB", "val": "14825", "quality": "1", "timestamp": "2021-12-15T15:16:47.091+0800", "secret": "0" }, { "name": "Anglc3_phsC", "val": "14988", "quality": "1", "timestamp": "2021-12-15T15:16:47.091+0800", "secret": "0" }, { "name": "Anglc4_phsA", "val": "0", "quality": "1", "timestamp": "2021-12-15T15:16:47.091+0800", "secret": "0" }, { "name": "Anglc4_phsB", "val": "11", "quality": "1", "timestamp": "2021-12-15T15:16:47.091+0800", "secret": "0" }, { "name": "Anglc4_phsC", "val": "0", "quality": "1", "timestamp": "2021-12-15T15:16:47.091+0800", "secret": "0" }, { "name": "Anglc5_phsA", "val": "50", "quality": "1", "timestamp": "2021-12-15T15:16:47.091+0800", "secret": "0" }, { "name": "Anglc5_phsB", "val": "50", "quality": "1", "timestamp": "2021-12-15T15:16:47.091+0800", "secret": "0" }, { "name": "Anglc5_phsC", "val": "50", "quality": "1", "timestamp": "2021-12-15T15:16:47.091+0800", "secret": "0" }, { "name": "Anglc6_phsA", "val": "0", "quality": "1", "timestamp": "2021-12-15T15:16:47.091+0800", "secret": "0" }, { "name": "Anglc6_phsB", "val": "5", "quality": "1", "timestamp": "2021-12-15T15:16:47.091+0800", "secret": "0" }, { "name": "Anglc6_phsC", "val": "6", "quality": "1", "timestamp": "2021-12-15T15:16:47.091+0800", "secret": "0" }, { "name": "Anglc7_phsA", "val": "350", "quality": "1", "timestamp": "2021-12-15T15:16:47.091+0800", "secret": "0" }, { "name": "Anglc7_phsB", "val": "350", "quality": "1", "timestamp": "2021-12-15T15:16:47.091+0800", "secret": "0" }, { "name": "Anglc7_phsC", "val": "350", "quality": "1", "timestamp": "2021-12-15T15:16:47.091+0800", "secret": "0" }, { "name": "Anglc8_phsA", "val": "100", "quality": "1", "timestamp": "2021-12-15T15:16:47.091+0800", "secret": "0" }, { "name": "Anglc8_phsB", "val": "100", "quality": "1", "timestamp": "2021-12-15T15:16:47.091+0800", "secret": "0" }, { "name": "Anglc8_phsC", "val": "100", "quality": "1", "timestamp": "2021-12-15T15:16:47.091+0800", "secret": "0" }, { "name": "Anglc9_phsA", "val": "6", "quality": "1", "timestamp": "2021-12-15T15:16:47.091+0800", "secret": "0" }, { "name": "Anglc9_phsB", "val": "6", "quality": "1", "timestamp": "2021-12-15T15:16:47.091+0800", "secret": "0" }, { "name": "Anglc9_phsC", "val": "6", "quality": "1", "timestamp": "2021-12-15T15:16:47.091+0800", "secret": "0" }, { "name": "Anglc10_phsA", "val": "350", "quality": "1", "timestamp": "2021-12-15T15:16:47.091+0800", "secret": "0" }, { "name": "Anglc10_phsB", "val": "350", "quality": "1", "timestamp": "2021-12-15T15:16:47.091+0800", "secret": "0" }, { "name": "Anglc10_phsC", "val": "350", "quality": "1", "timestamp": "2021-12-15T15:16:47.091+0800", "secret": "0" }, { "name": "Anglc11_phsA", "val": "150", "quality": "1", "timestamp": "2021-12-15T15:16:47.091+0800", "secret": "0" }, { "name": "Anglc11_phsB", "val": "150", "quality": "1", "timestamp": "2021-12-15T15:16:47.091+0800", "secret": "0" }, { "name": "Anglc11_phsC", "val": "150", "quality": "1", "timestamp": "2021-12-15T15:16:47.091+0800", "secret": "0" }, { "name": "Anglc12_phsA", "val": "6", "quality": "1", "timestamp": "2021-12-15T15:16:47.091+0800", "secret": "0" }, { "name": "Anglc12_phsB", "val": "6", "quality": "1", "timestamp": "2021-12-15T15:16:47.091+0800", "secret": "0" }, { "name": "Anglc12_phsC", "val": "8", "quality": "1", "timestamp": "2021-12-15T15:16:47.091+0800", "secret": "0" }, { "name": "Anglc13_phsA", "val": "350", "quality": "1", "timestamp": "2021-12-15T15:16:47.091+0800", "secret": "0" }, { "name": "Anglc13_phsB", "val": "350", "quality": "1", "timestamp": "2021-12-15T15:16:47.091+0800", "secret": "0" }, { "name": "Anglc13_phsC", "val": "350", "quality": "1", "timestamp": "2021-12-15T15:16:47.091+0800", "secret": "0" }] }
遥信脉冲功能参数查询设置
查询
rspSample/dataCenter/JSON/get/request/parameter
{ "token": "1639633821_760784807", "timestamp": "2021-12-16T13:50:21.462+0800", "body": [{ "dev": "TTU_f833b65f53e20695", "totalcall": "0", "body": ["DI_Function"] }] }
dataCenter/rspSample/JSON/get/response/parameter
{ "token": "1639633821_760784807", "timestamp": "2021-12-16T13:50:21.474+0800", "body": [{ "dev": "TTU_f833b65f53e20695", "body": [{ "name": "DI_Function", "val": "0", "datatype": "Uint", "unit": "" }] }] }
设置
rspSample/dataCenter/JSON/set/request/parameter
{ "token": "1639633311_404166057", "timestamp": "2021-12-16T13:41:51.223+0800", "body": [{ "dev": "TTU_f833b65f53e20695", "body": [{ "name": "DI_Function", "val": "0", "datatype": "Uint", "unit": "" }] }] }
遥信脉冲防抖时间参数查询设置
查询
rspSample/dataCenter/JSON/get/request/parameter
{ "token": "1639633821_1160903974", "timestamp": "2021-12-16T13:50:21.485+0800", "body": [{ "dev": "TTU_f833b65f53e20695", "totalcall": "0", "body": ["DI_ShakeTime"] }] }
dataCenter/rspSample/JSON/get/response/parameter
{ "token": "1639633821_1160903974", "timestamp": "2021-12-16T13:50:21.493+0800", "body": [{ "dev": "TTU_f833b65f53e20695", "body": [{ "name": "DI_ShakeTime", "val": "100", "datatype": "Uint", "unit": "" }] }] }
(DI_ShakeTime> 5 && DI_ShakeTime<= 60000)
设置
rspSample/dataCenter/JSON/set/request/parameter
{ "token": "1639632782_1912953221", "timestamp": "2021-12-16T13:33:02.953+0800", "body": [{ "dev": "TTU_f833b65f53e20695", "body": [{ "name": "DI_ShakeTime", "val": "101", "datatype": "Uint", "unit": "" }] }] }
TTU参数查询
rspSample/dataCenter/JSON/get/request/parameter
{ "token": "123", "timestamp": "2019-03-01T09:30:08.230+0800", "body": [ { "dev": "TTU_f833b65f53e20695", "totalcall": "1", "body": [] }] }
dataCenter/rspSample/JSON/get/response/parameter
TODO